<?xml version='1.0' encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <link href="cpip.css" rel="stylesheet" type="text/css" />
    <title>File: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/stat.h</title>
  </head>
  <body>
    <h1>File: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/stat.h</h1>
    <p>Green shading in the line number column
means the source is part of the translation unit, red means it is conditionally excluded.
Highlighted line numbers link to the translation unit page. Highlighted macros link to
the macro page.</p>
    <pre><a name="1" /><span class="True">       1:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_noref.html#_X0FTTV9YODZfU1RBVF9IXzA_"><span class="b">_ASM_X86_STAT_H</span></a>
<a name="2" /><span class="True">       2:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X0FTTV9YODZfU1RBVF9IXzA_"><span class="b">_ASM_X86_STAT_H</span></a>
<a name="3" /><span class="True">       3:</span> 
<a name="4" /><span class="True">       4:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U1RBVF9IQVZFX05TRUNfMA__"><span class="b">STAT_HAVE_NSEC</span></a> <span class="c">1</span>
<a name="5" /><span class="True">       5:</span> 
<a name="6" /><span class="False">       6:</span> <span class="f">#</span><span class="n">ifdef</span> <span class="b">__i386__</span>
<a name="7" /><span class="False">       7:</span> <span class="m">struct</span> <span class="b">stat</span> <span class="f">{</span>
<a name="8" /><span class="False">       8:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_dev</span><span class="f">;</span>
<a name="9" /><span class="False">       9:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_ino</span><span class="f">;</span>
<a name="10" /><span class="False">      10:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_mode</span><span class="f">;</span>
<a name="11" /><span class="False">      11:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_nlink</span><span class="f">;</span>
<a name="12" /><span class="False">      12:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_uid</span><span class="f">;</span>
<a name="13" /><span class="False">      13:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_gid</span><span class="f">;</span>
<a name="14" /><span class="False">      14:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_rdev</span><span class="f">;</span>
<a name="15" /><span class="False">      15:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_size</span><span class="f">;</span>
<a name="16" /><span class="False">      16:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_blksize</span><span class="f">;</span>
<a name="17" /><span class="False">      17:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_blocks</span><span class="f">;</span>
<a name="18" /><span class="False">      18:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_atime</span><span class="f">;</span>
<a name="19" /><span class="False">      19:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_atime_nsec</span><span class="f">;</span>
<a name="20" /><span class="False">      20:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_mtime</span><span class="f">;</span>
<a name="21" /><span class="False">      21:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_mtime_nsec</span><span class="f">;</span>
<a name="22" /><span class="False">      22:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_ctime</span><span class="f">;</span>
<a name="23" /><span class="False">      23:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_ctime_nsec</span><span class="f">;</span>
<a name="24" /><span class="False">      24:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">__unused4</span><span class="f">;</span>
<a name="25" /><span class="False">      25:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">__unused5</span><span class="f">;</span>
<a name="26" /><span class="False">      26:</span> <span class="f">}</span><span class="f">;</span>
<a name="27" /><span class="False">      27:</span> 
<a name="28" /><span class="False">      28:</span> <span class="k">/* We don&apos;t need to memset the whole thing just to initialize the padding */</span>
<a name="29" /><span class="False">      29:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_SU5JVF9TVFJVQ1RfU1RBVF9QQURESU5HXzA_"><span class="b">INIT_STRUCT_STAT_PADDING</span></a><span class="f">(</span><span class="b">st</span><span class="f">)</span> <span class="m">do</span> <span class="f">{</span>    \
<a name="30" /><span class="False">      30:</span>     <span class="b">st</span><span class="f">.</span><span class="b">__unused4</span> <span class="f">=</span> <span class="c">0</span><span class="f">;</span>            \
<a name="31" /><span class="False">      31:</span>     <span class="b">st</span><span class="f">.</span><span class="b">__unused5</span> <span class="f">=</span> <span class="c">0</span><span class="f">;</span>            \
<a name="32" /><span class="False">      32:</span> <span class="f">}</span> <span class="m">while</span> <span class="f">(</span><span class="c">0</span><span class="f">)</span>
<a name="33" /><span class="False">      33:</span> 
<a name="34" /><span class="False">      34:</span> <span class="f">#</span><span class="n">define</span> <span class="b">STAT64_HAS_BROKEN_ST_INO</span>    <span class="c">1</span>
<a name="35" /><span class="False">      35:</span> 
<a name="36" /><span class="False">      36:</span> <span class="k">/* This matches struct stat64 in glibc2.1, hence the absolutely</span>
<a name="37" /><span class="False">      37:</span> <span class="k"> * insane amounts of padding around dev_t&apos;s.</span>
<a name="38" /><span class="False">      38:</span> <span class="k"> */</span>
<a name="39" /><span class="False">      39:</span> <span class="m">struct</span> <span class="b">stat64</span> <span class="f">{</span>
<a name="40" /><span class="False">      40:</span>     <span class="m">unsigned</span> <span class="m">long</span> <span class="m">long</span>    <span class="b">st_dev</span><span class="f">;</span>
<a name="41" /><span class="False">      41:</span>     <span class="m">unsigned</span> <span class="m">char</span>    <span class="b">__pad0</span><span class="f">[</span><span class="c">4</span><span class="f">]</span><span class="f">;</span>
<a name="42" /><span class="False">      42:</span> 
<a name="43" /><span class="False">      43:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">__st_ino</span><span class="f">;</span>
<a name="44" /><span class="False">      44:</span> 
<a name="45" /><span class="False">      45:</span>     <span class="m">unsigned</span> <span class="m">int</span>    <span class="b">st_mode</span><span class="f">;</span>
<a name="46" /><span class="False">      46:</span>     <span class="m">unsigned</span> <span class="m">int</span>    <span class="b">st_nlink</span><span class="f">;</span>
<a name="47" /><span class="False">      47:</span> 
<a name="48" /><span class="False">      48:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_uid</span><span class="f">;</span>
<a name="49" /><span class="False">      49:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_gid</span><span class="f">;</span>
<a name="50" /><span class="False">      50:</span> 
<a name="51" /><span class="False">      51:</span>     <span class="m">unsigned</span> <span class="m">long</span> <span class="m">long</span>    <span class="b">st_rdev</span><span class="f">;</span>
<a name="52" /><span class="False">      52:</span>     <span class="m">unsigned</span> <span class="m">char</span>    <span class="b">__pad3</span><span class="f">[</span><span class="c">4</span><span class="f">]</span><span class="f">;</span>
<a name="53" /><span class="False">      53:</span> 
<a name="54" /><span class="False">      54:</span>     <span class="m">long</span> <span class="m">long</span>    <span class="b">st_size</span><span class="f">;</span>
<a name="55" /><span class="False">      55:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_blksize</span><span class="f">;</span>
<a name="56" /><span class="False">      56:</span> 
<a name="57" /><span class="False">      57:</span>     <span class="k">/* Number 512-byte blocks allocated. */</span>
<a name="58" /><span class="False">      58:</span>     <span class="m">unsigned</span> <span class="m">long</span> <span class="m">long</span>    <span class="b">st_blocks</span><span class="f">;</span>
<a name="59" /><span class="False">      59:</span> 
<a name="60" /><span class="False">      60:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_atime</span><span class="f">;</span>
<a name="61" /><span class="False">      61:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_atime_nsec</span><span class="f">;</span>
<a name="62" /><span class="False">      62:</span> 
<a name="63" /><span class="False">      63:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_mtime</span><span class="f">;</span>
<a name="64" /><span class="False">      64:</span>     <span class="m">unsigned</span> <span class="m">int</span>    <span class="b">st_mtime_nsec</span><span class="f">;</span>
<a name="65" /><span class="False">      65:</span> 
<a name="66" /><span class="False">      66:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_ctime</span><span class="f">;</span>
<a name="67" /><span class="False">      67:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_ctime_nsec</span><span class="f">;</span>
<a name="68" /><span class="False">      68:</span> 
<a name="69" /><span class="False">      69:</span>     <span class="m">unsigned</span> <span class="m">long</span> <span class="m">long</span>    <span class="b">st_ino</span><span class="f">;</span>
<a name="70" /><span class="False">      70:</span> <span class="f">}</span><span class="f">;</span>
<a name="71" /><span class="False">      71:</span> 
<a name="72" /><span class="False">      72:</span> <span class="k">/* We don&apos;t need to memset the whole thing just to initialize the padding */</span>
<a name="73" /><span class="False">      73:</span> <span class="f">#</span><span class="n">define</span> <span class="b">INIT_STRUCT_STAT64_PADDING</span><span class="f">(</span><span class="b">st</span><span class="f">)</span> <span class="m">do</span> <span class="f">{</span>        \
<a name="74" /><span class="False">      74:</span>     <span class="b">memset</span><span class="f">(</span><span class="f">&amp;</span><span class="b">st</span><span class="f">.</span><span class="b">__pad0</span><span class="f">,</span> <span class="c">0</span><span class="f">,</span> <span class="m">sizeof</span><span class="f">(</span><span class="b">st</span><span class="f">.</span><span class="b">__pad0</span><span class="f">)</span><span class="f">)</span><span class="f">;</span>    \
<a name="75" /><span class="False">      75:</span>     <span class="b">memset</span><span class="f">(</span><span class="f">&amp;</span><span class="b">st</span><span class="f">.</span><span class="b">__pad3</span><span class="f">,</span> <span class="c">0</span><span class="f">,</span> <span class="m">sizeof</span><span class="f">(</span><span class="b">st</span><span class="f">.</span><span class="b">__pad3</span><span class="f">)</span><span class="f">)</span><span class="f">;</span>    \
<a name="76" /><span class="False">      76:</span> <span class="f">}</span> <span class="m">while</span> <span class="f">(</span><span class="c">0</span><span class="f">)</span>
<a name="77" /><span class="False">      77:</span> 
<a name="78" /><span class="True">      78:</span> <span class="f">#</span><span class="n">else</span> <span class="k">/* __i386__ */</span>
<a name="79" /><span class="True">      79:</span> 
<a name="80" /><span class="True">      80:</span> <span class="m">struct</span> <span class="b">stat</span> <span class="f">{</span>
<a name="81" /><span class="True">      81:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_dev</span><span class="f">;</span>
<a name="82" /><span class="True">      82:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_ino</span><span class="f">;</span>
<a name="83" /><span class="True">      83:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_nlink</span><span class="f">;</span>
<a name="84" /><span class="True">      84:</span> 
<a name="85" /><span class="True">      85:</span>     <span class="m">unsigned</span> <span class="m">int</span>    <span class="b">st_mode</span><span class="f">;</span>
<a name="86" /><span class="True">      86:</span>     <span class="m">unsigned</span> <span class="m">int</span>    <span class="b">st_uid</span><span class="f">;</span>
<a name="87" /><span class="True">      87:</span>     <span class="m">unsigned</span> <span class="m">int</span>    <span class="b">st_gid</span><span class="f">;</span>
<a name="88" /><span class="True">      88:</span>     <span class="m">unsigned</span> <span class="m">int</span>    <span class="b">__pad0</span><span class="f">;</span>
<a name="89" /><span class="True">      89:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_rdev</span><span class="f">;</span>
<a name="90" /><span class="True">      90:</span>     <span class="m">long</span>        <span class="b">st_size</span><span class="f">;</span>
<a name="91" /><span class="True">      91:</span>     <span class="m">long</span>        <span class="b">st_blksize</span><span class="f">;</span>
<a name="92" /><span class="True">      92:</span>     <span class="m">long</span>        <span class="b">st_blocks</span><span class="f">;</span>    <span class="k">/* Number 512-byte blocks allocated. */</span>
<a name="93" /><span class="True">      93:</span> 
<a name="94" /><span class="True">      94:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_atime</span><span class="f">;</span>
<a name="95" /><span class="True">      95:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_atime_nsec</span><span class="f">;</span>
<a name="96" /><span class="True">      96:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_mtime</span><span class="f">;</span>
<a name="97" /><span class="True">      97:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_mtime_nsec</span><span class="f">;</span>
<a name="98" /><span class="True">      98:</span>     <span class="m">unsigned</span> <span class="m">long</span>    <span class="b">st_ctime</span><span class="f">;</span>
<a name="99" /><span class="True">      99:</span>     <span class="m">unsigned</span> <span class="m">long</span>   <span class="b">st_ctime_nsec</span><span class="f">;</span>
<a name="100" /><span class="True">     100:</span>     <span class="m">long</span>        <a href="cpu.c_macros_ref.html#_X191bnVzZWRfMA__"><span class="b">__unused</span></a><span class="f">[</span><span class="c">3</span><span class="f">]</span><span class="f">;</span>
<a name="101" /><span class="True">     101:</span> <span class="f">}</span><span class="f">;</span>
<a name="102" /><span class="True">     102:</span> 
<a name="103" /><span class="True">     103:</span> <span class="k">/* We don&apos;t need to memset the whole thing just to initialize the padding */</span>
<a name="104" /><span class="True">     104:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_SU5JVF9TVFJVQ1RfU1RBVF9QQURESU5HXzA_"><span class="b">INIT_STRUCT_STAT_PADDING</span></a><span class="f">(</span><span class="b">st</span><span class="f">)</span> <span class="m">do</span> <span class="f">{</span>    \
<a name="105" /><span class="True">     105:</span>     <span class="b">st</span><span class="f">.</span><span class="b">__pad0</span> <span class="f">=</span> <span class="c">0</span><span class="f">;</span>                \
<a name="106" /><span class="True">     106:</span>     <span class="b">st</span><span class="f">.</span><a href="cpu.c_macros_ref.html#_X191bnVzZWRfMA__"><span class="b">__unused</span></a><span class="f">[</span><span class="c">0</span><span class="f">]</span> <span class="f">=</span> <span class="c">0</span><span class="f">;</span>            \
<a name="107" /><span class="True">     107:</span>     <span class="b">st</span><span class="f">.</span><a href="cpu.c_macros_ref.html#_X191bnVzZWRfMA__"><span class="b">__unused</span></a><span class="f">[</span><span class="c">1</span><span class="f">]</span> <span class="f">=</span> <span class="c">0</span><span class="f">;</span>            \
<a name="108" /><span class="True">     108:</span>     <span class="b">st</span><span class="f">.</span><a href="cpu.c_macros_ref.html#_X191bnVzZWRfMA__"><span class="b">__unused</span></a><span class="f">[</span><span class="c">2</span><span class="f">]</span> <span class="f">=</span> <span class="c">0</span><span class="f">;</span>            \
<a name="109" /><span class="True">     109:</span> <span class="f">}</span> <span class="m">while</span> <span class="f">(</span><span class="c">0</span><span class="f">)</span>
<a name="110" /><span class="True">     110:</span> 
<a name="111" /><span class="True">     111:</span> <span class="f">#</span><span class="n">endif</span>
<a name="112" /><span class="True">     112:</span> 
<a name="113" /><span class="True">     113:</span> <span class="k">/* for 32bit emulation and 32 bit kernels */</span>
<a name="114" /><span class="True">     114:</span> <span class="m">struct</span> <span class="b">__old_kernel_stat</span> <span class="f">{</span>
<a name="115" /><span class="True">     115:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_dev</span><span class="f">;</span>
<a name="116" /><span class="True">     116:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_ino</span><span class="f">;</span>
<a name="117" /><span class="True">     117:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_mode</span><span class="f">;</span>
<a name="118" /><span class="True">     118:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_nlink</span><span class="f">;</span>
<a name="119" /><span class="True">     119:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_uid</span><span class="f">;</span>
<a name="120" /><span class="True">     120:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_gid</span><span class="f">;</span>
<a name="121" /><span class="True">     121:</span>     <span class="m">unsigned</span> <span class="m">short</span> <span class="b">st_rdev</span><span class="f">;</span>
<a name="122" /><span class="False">     122:</span> <span class="f">#</span><span class="n">ifdef</span> <span class="b">__i386__</span>
<a name="123" /><span class="False">     123:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_size</span><span class="f">;</span>
<a name="124" /><span class="False">     124:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_atime</span><span class="f">;</span>
<a name="125" /><span class="False">     125:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_mtime</span><span class="f">;</span>
<a name="126" /><span class="False">     126:</span>     <span class="m">unsigned</span> <span class="m">long</span>  <span class="b">st_ctime</span><span class="f">;</span>
<a name="127" /><span class="True">     127:</span> <span class="f">#</span><span class="n">else</span>
<a name="128" /><span class="True">     128:</span>     <span class="m">unsigned</span> <span class="m">int</span>  <span class="b">st_size</span><span class="f">;</span>
<a name="129" /><span class="True">     129:</span>     <span class="m">unsigned</span> <span class="m">int</span>  <span class="b">st_atime</span><span class="f">;</span>
<a name="130" /><span class="True">     130:</span>     <span class="m">unsigned</span> <span class="m">int</span>  <span class="b">st_mtime</span><span class="f">;</span>
<a name="131" /><span class="True">     131:</span>     <span class="m">unsigned</span> <span class="m">int</span>  <span class="b">st_ctime</span><span class="f">;</span>
<a name="132" /><span class="True">     132:</span> <span class="f">#</span><span class="n">endif</span>
<a name="133" /><span class="True">     133:</span> <span class="f">}</span><span class="f">;</span>
<a name="134" /><span class="True">     134:</span> 
<a name="135" /><span class="True">     135:</span> <span class="f">#</span><span class="n">endif</span> <span class="k">/* _ASM_X86_STAT_H */</span>
<a name="136" /><span class="True">     136:</span> </pre>
  </body>
</html>
